package day04;

import java.util.Random;
import java.util.Scanner;

/**
 * @author Xiao
 * @date 2021/7/3
 */
/*
	分析以下需求并实现
	1.键盘录入一个数据作为数组的长度
	2.请使用随机数给数组赋值
	3.再次键盘录入一个数据,统计这个数在该数组中出现的次数
	例如:
		数组的元素为: {1,2,5,1}
		要找的数为:1
		最终控制台打印的结果为: 1 在数组里出现的次数为 2 次
*/
public class Test03 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        Random r = new Random();
        int [] arr;
        System.out.println("请输入一个数作为数组长度(5-10)：");
        while (true) {
            int length = sc.nextInt();
            if (length < 5 || length > 10) {
                System.out.println("您输入的数字有误，请重新输入(5-10)：");
            } else {
                arr = new int[length];
                for (int i = 0; i < arr.length; i++) {
                    int num = r.nextInt(length);
                    arr[i] = num;
                }
                break;
            }
        }
        System.out.println("随机数组元素如下：");
        System.out.print("[");
        for (int i = 0; i < arr.length; i++) {
            if (i == arr.length - 1) {
                System.out.println(arr[i] + "]");
            } else {
                System.out.print(arr[i] + ", ");
            }
        }
        System.out.println("请输入您要统计次数的数字(0-" + (arr.length) + ")：");
        int num = sc.nextInt();
        int count = 0;
        for (int i = 0; i < arr.length; i++) {
            if (num == arr[i]) {
                count++;
            }
        }
        System.out.println("数字“"+ num + "”在数组中出现了“" + count + "”次。");
    }
}
